﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Windows.Forms;
using System.Drawing;
using System.Text.RegularExpressions;
using System.Data.SqlClient;

namespace FrbaCommerce
{
    public class Direccion
    {
        public int id { get; set; }
        public string domicilio { get; set; }
        public int nro { get; set; }
        public int piso { get; set; }
        public string depto { get; set; }
        public string cp { get; set; }
        public string localidad { get; set; }        
        public string ciudad { get; set; }

        public int Guardar(Direccion direccion) 
        {
            ConexionSql conexion = new ConexionSql();
            DataSet datos = new DataSet();
            string query = " INSERT INTO ASDF.Direccion VALUES ";
            query += "('" + direccion.domicilio + "', " + direccion.nro + " , " + direccion.piso + ", '" + direccion.depto + "', '" + direccion.cp + "' , '" + direccion.localidad + "' ,' " + direccion.ciudad + "' )";
            conexion.ejecutarConsulta(query);
            query = " SELECT TOP 1 id FROM ASDF.Direccion ORDER BY id DESC ";
            datos = conexion.ejecutarConsulta(query);
            DataRow fila = datos.Tables[0].Rows[0];
            direccion.id=Convert.ToInt16(fila.ItemArray[0].ToString());
            return direccion.id;
        }
        public void Modificar(Direccion dir)
        {
            ConexionSql conexion = new ConexionSql();
            DataSet datos = new DataSet();
            string query = " UPDATE ASDF.Direccion SET ";
            query += " domicilio = '" + dir.domicilio + "', nro= " + dir.nro + ", piso = " + dir.piso + ", dpto = '" + dir.depto + "', cp = '" + dir.cp + "', ";
            query += " localidad = '" + dir.localidad + "' , ciudad = '" + dir.ciudad + "' WHERE id = " + dir.id + " ";
            conexion.ejecutarConsulta(query);        
        }    

        public Direccion buscarDireccion(int id)
        {
            Direccion dir = new Direccion();
            ConexionSql conexion = new ConexionSql();
            string query = " SELECT * FROM ASDF.Direccion WHERE id = " + id;
            DataSet datos = conexion.ejecutarConsulta(query);
            DataRow fila = datos.Tables[0].Rows[0];
            dir = CargarDireccion(fila);
            return dir;
        }

        private Direccion CargarDireccion(DataRow fila)
        {
            Direccion dir = new Direccion();
            dir.id = Convert.ToInt16(fila.ItemArray[0].ToString());
            dir.domicilio = fila.ItemArray[1].ToString();
            dir.nro = Convert.ToInt16(fila.ItemArray[2].ToString());
            dir.piso = Convert.ToInt16(fila.ItemArray[3].ToString());
            dir.depto = fila.ItemArray[4].ToString();
            dir.cp = fila.ItemArray[5].ToString();
            dir.localidad = fila.ItemArray[6].ToString();
            dir.ciudad = fila.ItemArray[7].ToString();
            return dir;
        }
    }
}
